perm filename TIC3D.LAP[206,JMC] blob
sn#076836 filedate 1973-12-07 generic text, type T, neo UTF8
(DEFPROP TICTACFNS (TRY2 COMMENCE SQ EXT NEWGAME TER IMVAL SUCCESSORS REVERT UPDATE PTS LINES SORT SORTA SORTB S→
ORTC WIN ANSWER DOUBLETH TWOLIS THREAT) VALUE)
(LAP COMMENCE SUBR)
(MOVEI 1 (QUOTE (POINTS T 114)) S)
(CALL 17 (E ARRAY) S)
(MOVEI 1 (QUOTE (LINES T 100)) S)
(CALL 17 (E ARRAY) S)
(MOVEI 1 (QUOTE (XCOUNT 44 114)) S)
(CALL 17 (E ARRAY) S)
(MOVEI 1 (QUOTE (OCOUNT 44 114)) S)
(CALL 17 (E ARRAY) S)
(PUSH P (C 0 0 (QUOTE 0) 0))
(PUSH P (C 0 0 (QUOTE 0) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
TAG1 (MOVEI 2 (QUOTE 3))
(MOVE 1 -2 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG4)
(MOVEI 1 (QUOTE 0))
(MOVEM 1 0 P)
TAG2 (MOVEI 2 (QUOTE 3))
(MOVE 1 0 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG3)
(MOVEI 3 (QUOTE 0))
(MOVE 2 0 P)
(MOVE 1 -2 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVE 2 0 P)
(PUSH P 1)
(MOVE 1 -3 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVE 2 -1 P)
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 3))
(MOVE 2 -2 P)
(PUSH P 1)
(MOVE 1 -5 P)
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVE 3 0 P)
(MOVEI 2 (QUOTE 0))
(MOVE 1 -2 P)
(CALL 3 (E SQ) S)
(MOVE 3 0 P)
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVE 1 -3 P)
(CALL 3 (E SQ) S)
(MOVE 3 -1 P)
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 3 (E SQ) S)
(MOVE 3 -2 P)
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVE 1 -5 P)
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 20))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVE 3 0 P)
(MOVE 2 -2 P)
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVE 3 0 P)
(MOVE 2 -2 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVE 3 -1 P)
(MOVE 2 -3 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVE 3 -2 P)
(MOVE 2 -4 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 40))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVE 1 -3 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 -3 P)
(MOVE 1 0 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 0 P)
(JRST 0 TAG2)
TAG3 (MOVE 1 -2 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 -2 P)
(JRST 0 TAG1)
TAG4 (MOVEI 1 (QUOTE 60))
(MOVEI 2 (QUOTE 0))
(MOVEM 2 -2 P)
(MOVEM 1 -3 P)
TAG5 (MOVEI 2 (QUOTE 3))
(MOVE 1 -2 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG6)
(MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 0))
(MOVE 1 -2 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVE 1 -3 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVE 1 -5 P)
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 0))
(MOVE 1 -2 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVE 1 -3 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVE 1 -5 P)
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 1 (E ADD1) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 0))
(MOVE 2 -2 P)
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVE 2 -2 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVE 2 -3 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 3))
(MOVE 2 -4 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 10))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 3))
(MOVE 2 -2 P)
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVE 2 -2 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVE 2 -3 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 0))
(MOVE 2 -4 P)
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 11))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVE 3 -2 P)
(MOVEI 2 (QUOTE 0))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVE 3 -2 P)
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVE 3 -3 P)
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVE 3 -4 P)
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 20))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVE 3 -2 P)
(MOVEI 2 (QUOTE 3))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVE 3 -2 P)
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVE 3 -3 P)
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVE 3 -4 P)
(MOVEI 2 (QUOTE 0))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(MOVEI 2 (QUOTE 21))
(PUSH P 1)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS) S)
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 2 (QUOTE 2))
(MOVE 1 -3 P)
(CALL 2 (E *PLUS) S)
(MOVEM 1 -3 P)
(MOVE 1 -2 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 -2 P)
(JRST 0 TAG5)
TAG6 (MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 0))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVEI 1 (QUOTE 110))
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 0))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 3))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVEI 1 (QUOTE 111))
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 3))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 0))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVEI 1 (QUOTE 112))
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 3 (QUOTE 3))
(MOVEI 2 (QUOTE 3))
(MOVEI 1 (QUOTE 0))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 2))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVEI 1 (QUOTE 1))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 1))
(MOVEI 2 (QUOTE 1))
(PUSH P 1)
(MOVEI 1 (QUOTE 2))
(CALL 3 (E SQ) S)
(MOVEI 3 (QUOTE 0))
(MOVEI 2 (QUOTE 0))
(PUSH P 1)
(MOVEI 1 (QUOTE 3))
(CALL 3 (E SQ) S)
(CALL 1 (E NCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(POP P 2)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(MOVEI 1 (QUOTE 113))
(CALL 1 (E POINTS) S)
(POP P 1)
(PUSHJ P NSTR)
(MOVEI 1 (QUOTE 0))
(MOVEM 1 -1 P)
TAG7 (MOVEI 2 (QUOTE 77))
(MOVE 1 -1 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG10)
(MOVE 1 -1 P)
(CALL 1 (E LINES) S)
(MOVEI 1 (QUOTE NIL))
(PUSHJ P NSTR)
(MOVE 1 -1 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 -1 P)
(JRST 0 TAG7)
TAG10 (MOVEI 1 (QUOTE 0))
(MOVEM 1 -3 P)
TAG11 (MOVEI 2 (QUOTE 113))
(MOVE 1 -3 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG14)
(MOVE 1 -3 P)
(CALL 1 (E POINTS) S)
(MOVEM 1 -2 P)
TAG12 (MOVE 1 -2 P)
(JUMPE 1 TAG13)
(HLRZ@ 1 -2 P)
(CALL 1 (E LINES) S)
(MOVE 2 -3 P)
(CALL 2 (E XCONS) S)
(PUSH P 1)
(HLRZ@ 1 -3 P)
(CALL 1 (E LINES) S)
(POP P 1)
(PUSHJ P NSTR)
(HRRZ@ 1 -2 P)
(MOVEM 1 -2 P)
(JRST 0 TAG12)
TAG13 (MOVE 1 -3 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 -3 P)
(JRST 0 TAG11)
TAG14 (MOVEI 1 (QUOTE NIL))
(SUB P (C 4 0 4 0))
(POPJ P)
NIL
(LAP SQ SUBR)
(PUSH P 1)
(MOVEI 1 (QUOTE 4))
(PUSH P 3)
(CALL 2 (E *TIMES) S)
(MOVE 2 -1 P)
(CALL 2 (E *PLUS) S)
(POP P 2)
(MOVEM 1 0 P)
(MOVEI 1 (QUOTE 20))
(CALL 2 (E *TIMES) S)
(POP P 2)
(JCALL 2 (E *PLUS) S)
NIL
(LAP EXT SUBR)
(HLRZ@ 1 1)
(POPJ P)
NIL
(LAP NEWGAME SUBR)
(PUSH P (C 0 0 (QUOTE -1) 0))
TAG1 (MOVE 1 0 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 0 P)
(CALL 1 (E XCOUNT) S)
(MOVEI 1 (QUOTE 0))
(PUSHJ P NSTR)
(MOVE 1 0 P)
(CALL 1 (E OCOUNT) S)
(MOVEI 1 (QUOTE 0))
(PUSHJ P NSTR)
(MOVEI 2 (QUOTE 114))
(MOVE 1 0 P)
(CALL 2 (E *LESS) S)
(JUMPN 1 TAG1)
(CLEARM 0 (SPECIAL P1) S)
(CLEARM 0 (SPECIAL XS) S)
(CLEARM 0 (SPECIAL OS) S)
(MOVEI 2 (QUOTE 77))
(MOVEI 1 (QUOTE 0))
(CALL 2 (E MAKEL) S)
(MOVEM 1 (SPECIAL BS) S)
(CLEARM 0 (SPECIAL W) S)
(MOVEI 1 (QUOTE 0))
(MOVEM 1 (SPECIAL LEVEL) S)
(MOVEI 1 (QUOTE 0))
(MOVEM 1 (SPECIAL COUNT) S)
(MOVEI 1 (QUOTE (NEW GAME)) S)
(SUB P (C 1 0 1 0))
(POPJ P)
NIL
(LAP MAKEL SUBR)
(PUSH P 1)
(PUSH P 2)
(CALL 2 (E *GREAT) S)
(JUMPE 1 TAG2)
(MOVEI 1 (QUOTE NIL))
(JRST 0 TAG1)
TAG2 (MOVE 1 -1 P)
(CALL 1 (E ADD1) S)
(MOVE 2 0 P)
(CALL 2 (E MAKEL) S)
(MOVE 2 -1 P)
(CALL 2 (E XCONS) S)
TAG1 (SUB P (C 2 0 2 0))
(POPJ P)
NIL
(LAP SUBFUN1TER SUBR)
(CALL 1 (E XCOUNT) S)
(MOVEI 2 (QUOTE 4))
(JCALL 2 (E EQUAL) S)
NIL
(LAP SUBFUN2TER SUBR)
(CALL 1 (E OCOUNT) S)
(MOVEI 2 (QUOTE 4))
(JCALL 2 (E EQUAL) S)
NIL
(LAP TER SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(JUMPE 1 TAG2)
(MOVEI 2 (QUOTE 100))
(MOVE 1 (SPECIAL LEVEL) S)
(CALL 2 (E EQUAL) S)
(JUMPN 1 TAG1)
(MOVE 2 (SPECIAL LEVEL) S)
(MOVEI 1 (QUOTE 100))
(CALL 2 (E *DIF) S)
(MOVE 2 -1 P)
(CALL 2 (E *LESS) S)
(JUMPN 1 TAG1)
(MOVE 2 (SPECIAL LEVEL) S)
(MOVEI 1 (QUOTE -100))
(CALL 2 (E *PLUS) S)
(MOVE 2 0 P)
(CALL 2 (E *GREAT) S)
(JUMPN 1 TAG1)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG10)
(HLRZ@ 1 -2 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1TER) S)
(CALL 2 (E ORLIS) S)
(JRST 0 TAG7)
TAG10 (HLRZ@ 1 -2 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN2TER) S)
(CALL 2 (E ORLIS) S)
TAG7 (JUMPN 1 TAG1)
TAG2 (TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T) S)
(SUB P (C 3 0 3 0))
(POPJ P)
NIL
(LAP IMVAL SUBR)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG4)
(PUSH P (C 0 0 (QUOTE 0) 0))
TAG1 (MOVE 1 0 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 0 P)
(CALL 1 (E XCOUNT) S)
(MOVEI 2 (QUOTE 3))
(CALL 2 (E EQUAL) S)
(JUMPE 1 TAG11)
(MOVE 2 (SPECIAL LEVEL) S)
(MOVEI 1 (QUOTE 12))
(CALL 2 (E *DIF) S)
(JRST 0 TAG5)
TAG11 (MOVEI 2 (QUOTE 10))
(MOVE 1 0 P)
(CALL 2 (E *LESS) S)
(JUMPN 1 TAG1)
(MOVEI 1 (QUOTE 0))
(JRST 0 TAG5)
TAG5 (SUB P (C 1 0 1 0))
(JRST 0 TAG3)
TAG4 (PUSH P (C 0 0 (QUOTE 0) 0))
TAG2 (MOVE 1 0 P)
(CALL 1 (E ADD1) S)
(MOVEM 1 0 P)
(CALL 1 (E OCOUNT) S)
(MOVEI 2 (QUOTE 3))
(CALL 2 (E EQUAL) S)
(JUMPE 1 TAG23)
(MOVE 2 (SPECIAL LEVEL) S)
(MOVEI 1 (QUOTE -12))
(CALL 2 (E *PLUS) S)
(JRST 0 TAG17)
TAG23 (MOVEI 2 (QUOTE 10))
(MOVE 1 0 P)
(CALL 2 (E *LESS) S)
(JUMPN 1 TAG2)
(MOVEI 1 (QUOTE 0))
(JRST 0 TAG17)
TAG17 (SUB P (C 1 0 1 0))
TAG3 (POPJ P)
NIL
(LAP SUCCESSORS SUBR)
(PUSH P (SPECIAL BS) S)
(PUSH P 1)
(PUSH P (C 0 0 (QUOTE NIL) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
TAG1 (MOVE 1 -4 P)
(JUMPE 1 TAG6)
(HLRZ@ 1 -4 P)
(MOVE 2 -3 P)
(CALL 2 (E CONS) S)
(CALL 1 (E NCONS) S)
(MOVEM 1 -2 P)
(MOVE 1 -1 P)
(JUMPE 1 TAG12)
(MOVE 1 -2 P)
(HRRM@ 1 -1 P)
(HRRZ@ 2 -1 P)
(JRST 0 TAG11)
TAG12 (MOVE 2 -2 P)
(MOVEM 2 0 P)
TAG11 (HRRZ@ 1 -4 P)
(MOVEM 1 -4 P)
(MOVEM 2 -1 P)
(JRST 0 TAG1)
TAG6 (MOVE 1 0 P)
(SUB P (C 5 0 5 0))
(JCALL 1 (E SORT) S)
NIL
(LAP REVERT SUBR)
(MOVE 1 (SPECIAL LEVEL) S)
(CALL 1 (E SUB1) S)
(MOVEM 1 (SPECIAL LEVEL) S)
(PUSH P (C 0 0 (QUOTE NIL) 0))
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG7)
(MOVE 1 (SPECIAL XS) S)
(JRST 0 TAG6)
TAG7 (MOVE 1 (SPECIAL OS) S)
TAG6 (MOVE 2 (SPECIAL BS) S)
(HLRZ@ 1 1)
(CALL 2 (E CONS) S)
(MOVEM 1 (SPECIAL BS) S)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG13)
(HRRZ@ 1 (SPECIAL XS) S)
(MOVEM 1 (SPECIAL XS) S)
(JRST 0 TAG12)
TAG13 (HRRZ@ 1 (SPECIAL OS) S)
(MOVEM 1 (SPECIAL OS) S)
TAG12 (HLRZ@ 1 (SPECIAL P1) S)
(CALL 1 (E LINES) S)
(MOVEM 1 0 P)
TAG1 (MOVE 1 0 P)
(JUMPE 1 TAG2)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG21)
(HLRZ@ 1 0 P)
(CALL 1 (E XCOUNT) S)
(CALL 1 (E SUB1) S)
(PUSH P 1)
(HLRZ@ 1 -1 P)
(CALL 1 (E XCOUNT) S)
(POP P 1)
(PUSHJ P NSTR)
(JRST 0 TAG20)
TAG21 (HLRZ@ 1 0 P)
(CALL 1 (E OCOUNT) S)
(CALL 1 (E SUB1) S)
(PUSH P 1)
(HLRZ@ 1 -1 P)
(CALL 1 (E OCOUNT) S)
(POP P 1)
(PUSHJ P NSTR)
TAG20 (HRRZ@ 1 0 P)
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG2 (MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG24)
(TDZA 1 1)
TAG24 (MOVEI 1 (QUOTE T) S)
(MOVEM 1 (SPECIAL W) S)
(HRRZ@ 1 (SPECIAL P1) S)
(MOVEM 1 (SPECIAL P1) S)
(MOVEI 1 (QUOTE NIL))
(SUB P (C 1 0 1 0))
(POPJ P)
NIL
(LAP UPDATE SUBR)
(PUSH P 1)
(MOVE 1 (SPECIAL LEVEL) S)
(CALL 1 (E ADD1) S)
(MOVEM 1 (SPECIAL LEVEL) S)
(PUSH P (C 0 0 (QUOTE NIL) 0))
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG7)
(MOVE 2 (SPECIAL OS) S)
(MOVE 1 -1 P)
(CALL 2 (E CONS) S)
(MOVEM 1 (SPECIAL OS) S)
(JRST 0 TAG6)
TAG7 (MOVE 2 (SPECIAL XS) S)
(MOVE 1 -1 P)
(CALL 2 (E CONS) S)
(MOVEM 1 (SPECIAL XS) S)
TAG6 (MOVE 2 (SPECIAL BS) S)
(MOVE 1 -1 P)
(CALL 2 (E DELETE) S)
(MOVEM 1 (SPECIAL BS) S)
(MOVE 2 (SPECIAL P1) S)
(MOVE 1 -1 P)
(CALL 2 (E CONS) S)
(MOVEM 1 (SPECIAL P1) S)
(MOVE 1 (SPECIAL COUNT) S)
(CALL 1 (E ADD1) S)
(MOVEM 1 (SPECIAL COUNT) S)
(MOVE 1 -1 P)
(CALL 1 (E LINES) S)
(MOVEM 1 0 P)
TAG1 (MOVE 1 0 P)
(JUMPE 1 TAG2)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG15)
(HLRZ@ 1 0 P)
(CALL 1 (E OCOUNT) S)
(CALL 1 (E ADD1) S)
(PUSH P 1)
(HLRZ@ 1 -1 P)
(CALL 1 (E OCOUNT) S)
(POP P 1)
(PUSHJ P NSTR)
(JRST 0 TAG14)
TAG15 (HLRZ@ 1 0 P)
(CALL 1 (E XCOUNT) S)
(CALL 1 (E ADD1) S)
(PUSH P 1)
(HLRZ@ 1 -1 P)
(CALL 1 (E XCOUNT) S)
(POP P 1)
(PUSHJ P NSTR)
TAG14 (HRRZ@ 1 0 P)
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG2 (MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG20)
(TDZA 1 1)
TAG20 (MOVEI 1 (QUOTE T) S)
(MOVEM 1 (SPECIAL W) S)
(MOVEI 1 (QUOTE NIL))
(SUB P (C 2 0 2 0))
(POPJ P)
NIL
(LAP SORT SUBR)
(MOVEI 3 (QUOTE NIL))
(MOVEI 2 (QUOTE NIL))
(JCALL 3 (E SORTA) S)
NIL
(LAP SORTA SUBR)
(PUSH P 1)
(PUSH P 2)
(PUSH P 3)
(JUMPN 1 TAG2)
(MOVE 2 3)
(MOVE 1 -1 P)
(CALL 2 (E *APPEND) S)
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 1)
(CALL 1 (E WIN) S)
(JUMPE 1 TAG4)
(HLRZ@ 1 -2 P)
(CALL 1 (E NCONS) S)
(JRST 0 TAG1)
TAG4 (HLRZ@ 1 -2 P)
(CALL 1 (E ANSWER) S)
(JUMPE 1 TAG5)
(HLRZ@ 2 -2 P)
(HRRZ@ 1 -2 P)
(CALL 2 (E SORTB) S)
(JRST 0 TAG1)
TAG5 (HLRZ@ 1 -2 P)
(CALL 1 (E DOUBLETH) S)
(JUMPE 1 TAG6)
(HLRZ@ 2 -2 P)
(HRRZ@ 1 -2 P)
(CALL 2 (E SORTC) S)
(JRST 0 TAG1)
TAG6 (HLRZ@ 1 -2 P)
(CALL 1 (E THREAT) S)
(JUMPE 1 TAG7)
(MOVE 2 -1 P)
(HLRZ@ 1 -2 P)
(CALL 2 (E CONS) S)
(MOVE 3 0 P)
(MOVE 2 1)
(HRRZ@ 1 -2 P)
(CALL 3 (E SORTA) S)
(JRST 0 TAG1)
TAG7 (MOVE 2 0 P)
(HLRZ@ 1 -2 P)
(CALL 2 (E CONS) S)
(MOVE 3 1)
(MOVE 2 -1 P)
(HRRZ@ 1 -2 P)
(CALL 3 (E SORTA) S)
TAG1 (SUB P (C 3 0 3 0))
(POPJ P)
NIL
(LAP SORTB SUBR)
(PUSH P 1)
(PUSH P 2)
(JUMPN 1 TAG2)
(MOVE 1 2)
(CALL 1 (E NCONS) S)
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 1)
(CALL 1 (E WIN) S)
(JUMPE 1 TAG4)
(HLRZ@ 1 -1 P)
(CALL 1 (E NCONS) S)
(JRST 0 TAG1)
TAG4 (MOVE 2 0 P)
(HRRZ@ 1 -1 P)
(CALL 2 (E SORTB) S)
TAG1 (SUB P (C 2 0 2 0))
(POPJ P)
NIL
(LAP SORTC SUBR)
(PUSH P 1)
(PUSH P 2)
(JUMPN 1 TAG2)
(MOVE 1 2)
(CALL 1 (E NCONS) S)
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 1)
(CALL 1 (E WIN) S)
(JUMPE 1 TAG4)
(HLRZ@ 1 -1 P)
(CALL 1 (E NCONS) S)
(JRST 0 TAG1)
TAG4 (HLRZ@ 1 -1 P)
(CALL 1 (E ANSWER) S)
(JUMPE 1 TAG5)
(HLRZ@ 2 -1 P)
(HRRZ@ 1 -1 P)
(CALL 2 (E SORTB) S)
(JRST 0 TAG1)
TAG5 (MOVE 2 0 P)
(HRRZ@ 1 -1 P)
(CALL 2 (E SORTC) S)
TAG1 (SUB P (C 2 0 2 0))
(POPJ P)
NIL
(LAP SUBFUN1WIN SUBR)
(CALL 1 (E OCOUNT) S)
(MOVEI 2 (QUOTE 2))
(JCALL 2 (E EQUAL) S)
NIL
(LAP SUBFUN2WIN SUBR)
(CALL 1 (E XCOUNT) S)
(MOVEI 2 (QUOTE 2))
(JCALL 2 (E EQUAL) S)
NIL
(LAP WIN SUBR)
(PUSH P 1)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG2)
(HLRZ@ 1 0 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1WIN) S)
(CALL 2 (E ORLIS) S)
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 0 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN2WIN) S)
(CALL 2 (E ORLIS) S)
TAG1 (SUB P (C 1 0 1 0))
(POPJ P)
NIL
(LAP SUBFUN1ANSWER SUBR)
(CALL 1 (E XCOUNT) S)
(MOVEI 2 (QUOTE 2))
(JCALL 2 (E EQUAL) S)
NIL
(LAP SUBFUN2ANSWER SUBR)
(CALL 1 (E OCOUNT) S)
(MOVEI 2 (QUOTE 2))
(JCALL 2 (E EQUAL) S)
NIL
(LAP ANSWER SUBR)
(PUSH P 1)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG2)
(HLRZ@ 1 0 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1ANSWER) S)
(CALL 2 (E ORLIS) S)
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 0 P)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN2ANSWER) S)
(CALL 2 (E ORLIS) S)
TAG1 (SUB P (C 1 0 1 0))
(POPJ P)
NIL
(LAP SUBFUN1SUBFUN1DOUBLETH SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL W) S)
(PUSH P (SPECIAL X) S)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(POP P 1)
(CALL 2 (E MEMBER) S)
(JRST 0 SPECSTR)
NIL
(LAP SUBFUN1DOUBLETH SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL X) S)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG4)
(MOVE 1 (SPECIAL X) S)
(CALL 1 (E OCOUNT) S)
(MOVE 2 1)
(JRST 0 TAG3)
TAG4 (MOVE 1 (SPECIAL X) S)
(CALL 1 (E XCOUNT) S)
(MOVE 2 1)
TAG3 (MOVEI 1 (QUOTE 1))
(CALL 2 (E EQUAL) S)
(JUMPE 1 TAG2)
(MOVE 2 (SPECIAL BS) S)
(HLRZ@ 1 (SPECIAL P) S)
(CALL 2 (E DELETE) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1SUBFUN1DOUBLETH) S)
(CALL 2 (E ORLIS) S)
(JUMPN 1 TAG1)
TAG2 (TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T) S)
(JRST 0 SPECSTR)
NIL
(LAP DOUBLETH SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL P) S)
(HLRZ@ 1 1)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1DOUBLETH) S)
(CALL 2 (E TWOLIS) S)
(JRST 0 SPECSTR)
NIL
(LAP TWOLIS SUBR)
(PUSH P 1)
(PUSH P 2)
(JUMPE 2 TAG2)
(HLRZ@ 1 2)
(CALLF@ 1 -1 P)
(JUMPE 1 TAG10)
(HRRZ@ 2 0 P)
(MOVE 1 -1 P)
(CALL 2 (E ORLIS) S)
(JUMPN 1 TAG1)
TAG10 (HRRZ@ 2 0 P)
(MOVE 1 -1 P)
(CALL 2 (E TWOLIS) S)
(JUMPN 1 TAG1)
TAG2 (TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T) S)
(SUB P (C 2 0 2 0))
(POPJ P)
NIL
(LAP SUBFUN1SUBFUN1THREAT SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL W) S)
(PUSH P (SPECIAL X) S)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(POP P 1)
(CALL 2 (E MEMBER) S)
(JRST 0 SPECSTR)
NIL
(LAP SUBFUN1THREAT SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL X) S)
(MOVE 1 (SPECIAL W) S)
(JUMPE 1 TAG4)
(MOVE 1 (SPECIAL X) S)
(CALL 1 (E OCOUNT) S)
(MOVE 2 1)
(JRST 0 TAG3)
TAG4 (MOVE 1 (SPECIAL X) S)
(CALL 1 (E XCOUNT) S)
(MOVE 2 1)
TAG3 (MOVEI 1 (QUOTE 1))
(CALL 2 (E EQUAL) S)
(JUMPE 1 TAG2)
(MOVE 2 (SPECIAL BS) S)
(HLRZ@ 1 (SPECIAL P) S)
(CALL 2 (E DELETE) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1SUBFUN1THREAT) S)
(CALL 2 (E ORLIS) S)
(JUMPN 1 TAG1)
TAG2 (TDZA 1 1)
TAG1 (MOVEI 1 (QUOTE T) S)
(JRST 0 SPECSTR)
NIL
(LAP THREAT SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL P) S)
(HLRZ@ 1 1)
(CALL 1 (E LINES) S)
(MOVE 2 1)
(MOVEI 1 (QUOTE SUBFUN1THREAT) S)
(CALL 2 (E ORLIS) S)
(JRST 0 SPECSTR)
NIL